package com.ktgj.flight.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktgj.common.core.annotation.Excel;
import com.ktgj.common.core.web.domain.BaseEntity;

/**
 * 国际机票订单对象 iflight_order
 * 
 * @author ruoyi
 * @date 2022-05-31
 */
public class IflightOrder extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单表主键ID */
    private Long id;

    /** 订单唯一标识 */
    @Excel(name = "订单唯一标识")
    private Long orderid;

    /** 大订单号 */
    @Excel(name = "大订单号")
    private Long bigorderid;

    /** $column.columnComment */
    @Excel(name = "大订单号")
    private Long producttype;

    /** 平台订单确认状态，1：平台待确认 2：平台确认成功  3：平台确认失败 */
    @Excel(name = "平台订单确认状态，1：平台待确认 2：平台确认成功  3：平台确认失败")
    private Long platformstate;

    /** 是否收到行程单 */
    @Excel(name = "是否收到行程单")
    private String isleg;

    /** 合作商ID(合作商字典\产品来源) */
    @Excel(name = "合作商ID(合作商字典\\产品来源)")
    private Long partnerid;

    /** 锁定状态(未锁=0,锁=1) */
    @Excel(name = "锁定状态(未锁=0,锁=1)")
    private Integer lockstatus;

    /** 锁定时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "锁定时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date locktime;

    /** 锁定员工 */
    @Excel(name = "锁定员工")
    private Long lockemployeeid;

    /** 行程类型 */
    @Excel(name = "行程类型")
    private Long triptype;

    /** 订单PNR */
    @Excel(name = "订单PNR")
    private String pnr;

    /** PNR状态 */
    @Excel(name = "PNR状态")
    private Long pnrstatusid;

    /** 销售价 */
    @Excel(name = "销售价")
    private BigDecimal ticamount;

    /** 税金 */
    @Excel(name = "税金")
    private BigDecimal tax;

    /** 净价 */
    @Excel(name = "净价")
    private BigDecimal originalamount;

    /** 实际付给出票商的钱 */
    @Excel(name = "实际付给出票商的钱")
    private BigDecimal settleamount;

    /** 订单创建人（根据订单来源不同含义不同,内部系统必填\外网不限） */
    @Excel(name = "订单创建人（根据订单来源不同含义不同,内部系统必填\\外网不限）")
    private Long creatoremployeeid;

    /** 是否付款 */
    @Excel(name = "是否付款")
    private String paystatus;

    /** 是否出票 */
    @Excel(name = "是否出票")
    private String outticketstatus;

    /** 是否配送完成 */
    @Excel(name = "是否配送完成")
    private Integer sendstatus;

    /** 是否需要配送 */
    @Excel(name = "是否需要配送")
    private Integer isusesend;

    /** 付款时间（用统一默认时间，不是默认时间表示已支付） */
    @Excel(name = "付款时间", readConverterExp = "用=统一默认时间，不是默认时间表示已支付")
    private Date paytime;

    /** 退票状态 */
    @Excel(name = "退票状态")
    private String changestatus;

    /** 退改签规则 */
    @Excel(name = "退改签规则")
    private String changerule;

    /** 总经停时间（单位分钟） */
    @Excel(name = "总经停时间", readConverterExp = "单=位分钟")
    private Long duration;

    /** 联系人Email */
    @Excel(name = "联系人Email")
    private String contactemail;

    /** 联系人手机 */
    @Excel(name = "联系人手机")
    private String contactmobile;

    /** 联系人姓名 */
    @Excel(name = "联系人姓名")
    private String contactname;

    /** 取消原因 */
    @Excel(name = "取消原因")
    private String cancelmessage;

    /** 订单日志号 */
    @Excel(name = "订单日志号")
    private String onlycode;

    /** 出票时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出票时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date outtickettime;

    /** 会员卡号 */
    @Excel(name = "会员卡号")
    private String membercardid;

    /** 使用预留款金额 */
    @Excel(name = "使用预留款金额")
    private BigDecimal deposit;

    /** 呼叫中心来电的预定的电话号码 */
    @Excel(name = "呼叫中心来电的预定的电话号码")
    private String calltel;

    /** $column.columnComment */
    @Excel(name = "呼叫中心来电的预定的电话号码")
    private Long autooutticketstatus;

    /** $column.columnComment */
    @Excel(name = "呼叫中心来电的预定的电话号码")
    private String isdelete;

    /** 会员ID */
    @Excel(name = "会员ID")
    private Long customerId;

    /** 订单状态 */
    @Excel(name = "订单状态")
    private String status;

    /** 订单来源 */
    @Excel(name = "订单来源")
    private String source;

    /** 最晚出票时间 */
    @Excel(name = "最晚出票时间")
    private Date latestTicketingTime;

    /** 大编 */
    @Excel(name = "大编")
    private String bigPnr;

    /** 去程/往返 */
    @Excel(name = "去程/往返")
    private String outboundReturnJourney;

    /** 支付方式 */
    @Excel(name = "支付方式")
    private String paymentMethod;

    /** 原订单号 */
    @Excel(name = "原订单号")
    private String oldOrderNum;

    /** 预留款 */
    @Excel(name = "预留款")
    private BigDecimal amount;

    /*----------------------------------------------------------------------------------------------------*/

    /** 乘客人数 */
    @Excel(name = "乘客人数")
    private int passengerCount;

    /** 到达时间 */
    @Excel(name = "乘机人")
    private String passenger;

    /** 起飞时间-到达时间 */
    @Excel(name = "起飞时间-到达时间")
    private String time;

    /** 预定员 */
    @Excel(name = "预定员")
    private String reserveName;

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public String getOldOrderNum() {
        return oldOrderNum;
    }

    public void setOldOrderNum(String oldOrderNum) {
        this.oldOrderNum = oldOrderNum;
    }

    public String getPaymentMethod() {
        return paymentMethod;
    }

    public void setPaymentMethod(String paymentMethod) {
        this.paymentMethod = paymentMethod;
    }

    public int getPassengerCount() {
        return passengerCount;
    }

    public void setPassengerCount(int passengerCount) {
        this.passengerCount = passengerCount;
    }

    public String getPassenger() {
        return passenger;
    }

    public void setPassenger(String passenger) {
        this.passenger = passenger;
    }

    public String getTime() {
        return time;
    }

    public void setTime(String time) {
        this.time = time;
    }

    public String getReserveName() {
        return reserveName;
    }

    public void setReserveName(String reserveName) {
        this.reserveName = reserveName;
    }

    public Date getLatestTicketingTime() {
        return latestTicketingTime;
    }

    public void setLatestTicketingTime(Date latestTicketingTime) {
        this.latestTicketingTime = latestTicketingTime;
    }

    public String getBigPnr() {
        return bigPnr;
    }

    public void setBigPnr(String bigPnr) {
        this.bigPnr = bigPnr;
    }

    public String getOutboundReturnJourney() {
        return outboundReturnJourney;
    }

    public void setOutboundReturnJourney(String outboundReturnJourney) {
        this.outboundReturnJourney = outboundReturnJourney;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setOrderid(Long orderid) 
    {
        this.orderid = orderid;
    }

    public Long getOrderid() 
    {
        return orderid;
    }
    public void setBigorderid(Long bigorderid) 
    {
        this.bigorderid = bigorderid;
    }

    public Long getBigorderid() 
    {
        return bigorderid;
    }
    public void setProducttype(Long producttype) 
    {
        this.producttype = producttype;
    }

    public Long getProducttype() 
    {
        return producttype;
    }
    public void setPlatformstate(Long platformstate) 
    {
        this.platformstate = platformstate;
    }

    public Long getPlatformstate() 
    {
        return platformstate;
    }

    public String getIsleg() {
        return isleg;
    }

    public void setIsleg(String isleg) {
        this.isleg = isleg;
    }

    public void setPartnerid(Long partnerid)
    {
        this.partnerid = partnerid;
    }

    public Long getPartnerid() 
    {
        return partnerid;
    }
    public void setLockstatus(Integer lockstatus) 
    {
        this.lockstatus = lockstatus;
    }

    public Integer getLockstatus() 
    {
        return lockstatus;
    }
    public void setLocktime(Date locktime) 
    {
        this.locktime = locktime;
    }

    public Date getLocktime() 
    {
        return locktime;
    }
    public void setLockemployeeid(Long lockemployeeid) 
    {
        this.lockemployeeid = lockemployeeid;
    }

    public Long getLockemployeeid() 
    {
        return lockemployeeid;
    }
    public void setTriptype(Long triptype) 
    {
        this.triptype = triptype;
    }

    public Long getTriptype() 
    {
        return triptype;
    }
    public void setPnr(String pnr) 
    {
        this.pnr = pnr;
    }

    public String getPnr() 
    {
        return pnr;
    }
    public void setPnrstatusid(Long pnrstatusid) 
    {
        this.pnrstatusid = pnrstatusid;
    }

    public Long getPnrstatusid() 
    {
        return pnrstatusid;
    }
    public void setTicamount(BigDecimal ticamount) 
    {
        this.ticamount = ticamount;
    }

    public BigDecimal getTicamount() 
    {
        return ticamount;
    }
    public void setTax(BigDecimal tax) 
    {
        this.tax = tax;
    }

    public BigDecimal getTax() 
    {
        return tax;
    }
    public void setOriginalamount(BigDecimal originalamount) 
    {
        this.originalamount = originalamount;
    }

    public BigDecimal getOriginalamount() 
    {
        return originalamount;
    }
    public void setSettleamount(BigDecimal settleamount) 
    {
        this.settleamount = settleamount;
    }

    public BigDecimal getSettleamount() 
    {
        return settleamount;
    }
    public void setCreatoremployeeid(Long creatoremployeeid) 
    {
        this.creatoremployeeid = creatoremployeeid;
    }

    public Long getCreatoremployeeid() 
    {
        return creatoremployeeid;
    }

    public String getPaystatus() {
        return paystatus;
    }

    public void setPaystatus(String paystatus) {
        this.paystatus = paystatus;
    }

    public String getOutticketstatus() {
        return outticketstatus;
    }

    public void setOutticketstatus(String outticketstatus) {
        this.outticketstatus = outticketstatus;
    }

    public void setSendstatus(Integer sendstatus)
    {
        this.sendstatus = sendstatus;
    }

    public Integer getSendstatus() 
    {
        return sendstatus;
    }
    public void setIsusesend(Integer isusesend) 
    {
        this.isusesend = isusesend;
    }

    public Integer getIsusesend() 
    {
        return isusesend;
    }
    public void setPaytime(Date paytime) 
    {
        this.paytime = paytime;
    }

    public Date getPaytime() 
    {
        return paytime;
    }

    public String getChangestatus() {
        return changestatus;
    }

    public void setChangestatus(String changestatus) {
        this.changestatus = changestatus;
    }

    public void setChangerule(String changerule)
    {
        this.changerule = changerule;
    }

    public String getChangerule() 
    {
        return changerule;
    }
    public void setDuration(Long duration) 
    {
        this.duration = duration;
    }

    public Long getDuration() 
    {
        return duration;
    }
    public void setContactemail(String contactemail) 
    {
        this.contactemail = contactemail;
    }

    public String getContactemail() 
    {
        return contactemail;
    }
    public void setContactmobile(String contactmobile) 
    {
        this.contactmobile = contactmobile;
    }

    public String getContactmobile() 
    {
        return contactmobile;
    }
    public void setContactname(String contactname) 
    {
        this.contactname = contactname;
    }

    public String getContactname() 
    {
        return contactname;
    }
    public void setCancelmessage(String cancelmessage) 
    {
        this.cancelmessage = cancelmessage;
    }

    public String getCancelmessage() 
    {
        return cancelmessage;
    }
    public void setOnlycode(String onlycode) 
    {
        this.onlycode = onlycode;
    }

    public String getOnlycode() 
    {
        return onlycode;
    }
    public void setOuttickettime(Date outtickettime) 
    {
        this.outtickettime = outtickettime;
    }

    public Date getOuttickettime() 
    {
        return outtickettime;
    }
    public void setMembercardid(String membercardid) 
    {
        this.membercardid = membercardid;
    }

    public String getMembercardid() 
    {
        return membercardid;
    }
    public void setDeposit(BigDecimal deposit) 
    {
        this.deposit = deposit;
    }

    public BigDecimal getDeposit() 
    {
        return deposit;
    }
    public void setCalltel(String calltel) 
    {
        this.calltel = calltel;
    }

    public String getCalltel() 
    {
        return calltel;
    }
    public void setAutooutticketstatus(Long autooutticketstatus) 
    {
        this.autooutticketstatus = autooutticketstatus;
    }

    public Long getAutooutticketstatus() 
    {
        return autooutticketstatus;
    }

    public String getIsdelete() {
        return isdelete;
    }

    public void setIsdelete(String isdelete) {
        this.isdelete = isdelete;
    }

    public void setCustomerId(Long customerId)
    {
        this.customerId = customerId;
    }

    public Long getCustomerId() 
    {
        return customerId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderid", getOrderid())
            .append("bigorderid", getBigorderid())
            .append("producttype", getProducttype())
            .append("platformstate", getPlatformstate())
            .append("isleg", getIsleg())
            .append("partnerid", getPartnerid())
            .append("lockstatus", getLockstatus())
            .append("locktime", getLocktime())
            .append("lockemployeeid", getLockemployeeid())
            .append("triptype", getTriptype())
            .append("pnr", getPnr())
            .append("pnrstatusid", getPnrstatusid())
            .append("ticamount", getTicamount())
            .append("tax", getTax())
            .append("originalamount", getOriginalamount())
            .append("settleamount", getSettleamount())
            .append("createTime", getCreateTime())
            .append("creatoremployeeid", getCreatoremployeeid())
            .append("paystatus", getPaystatus())
            .append("outticketstatus", getOutticketstatus())
            .append("sendstatus", getSendstatus())
            .append("isusesend", getIsusesend())
            .append("paytime", getPaytime())
            .append("changestatus", getChangestatus())
            .append("changerule", getChangerule())
            .append("duration", getDuration())
            .append("contactemail", getContactemail())
            .append("contactmobile", getContactmobile())
            .append("contactname", getContactname())
            .append("cancelmessage", getCancelmessage())
            .append("remark", getRemark())
            .append("onlycode", getOnlycode())
            .append("outtickettime", getOuttickettime())
            .append("membercardid", getMembercardid())
            .append("deposit", getDeposit())
            .append("calltel", getCalltel())
            .append("autooutticketstatus", getAutooutticketstatus())
            .append("isdelete", getIsdelete())
            .append("customerId", getCustomerId())
            .toString();
    }
}
